<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro" xmlns:ry="">
	<head>
		<th:block th:include="include :: header('角色列表')" />
		<th:block th:include="include :: WdatePicker-js" />
	</head>
	<body class="gray-bg">
		<div class="container-div">
			<div class="row">
				<div class="col-sm-12 search-collapse">
					<form id="role-form">
						<div class="select-list">
							<ul>
								<li>
									角色名称：<input type="text" name="role_name"/>
								</li>
								<li>
									权限字符：<input type="text" name="role_key"/>
								</li>
								<li>
									角色状态：<ry:selectDict dictType="sys_normal_disable" name="status" headLabel="所有" headValue="" value=""/>
								</li>
								<li class="select-time">
									<label>创建时间： </label>
									<input type="text" name="start_time" placeholder="开始时间" onclick="WdatePicker();" />
									<span>-</span>
									<input type="text" name="end_time" placeholder="结束时间" onclick="WdatePicker();" />
								</li>
								<li>
									<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
								    <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
								</li>
							</ul>
						</div>
					</form>
				</div>

				<div class="btn-group-sm" id="toolbar" role="group">
					<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:role:add">
		                <i class="fa fa-plus"></i> 新增
		            </a>
					<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:role:remove">
			            <i class="fa fa-remove"></i> 删除
			        </a>
			        <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:role:export">
			            <i class="fa fa-download"></i> 导出
			        </a>
		        </div>

		        <div class="col-sm-12 select-table table-striped">
				    <table id="bootstrap-table"></table>
				</div>
			</div>
		</div>
		<th:block th:include="include :: footer" />
		<script th:inline="javascript">
			var editFlag = [[${@permission.hasPermi('system:role:edit')}]];
			var removeFlag = [[${@permission.hasPermi('system:role:remove')}]];
			var prefix = ctx + "system/role";

			$(function() {
			    var options = {
			        url: prefix + "/list",
			        createUrl: prefix + "/add",
			        updateUrl: prefix + "/edit/{id}",
			        removeUrl: prefix + "/remove",
			        exportUrl: prefix + "/export",
			        sortName: "role_sort",
			        modalName: "角色",
			        columns: [{
			            checkbox: true,
			            width: 50
			        },
			        {
			            field: 'role_id',
			            title: '角色编号',
			        	align: 'center'
			        },
			        {
			            field: 'role_name',
			            title: '角色名称',
			            sortable: true,
			        	align: 'center'
			        },
			        {
			            field: 'role_key',
			            title: '权限字符',
			        	align: 'center'
			        },
			        {
			            field: 'role_sort',
			            title: '显示顺序',
			            sortable: true,
			        	align: 'center'
			        },
			        {
			        	visible: editFlag == 'hidden' ? false : true,
			        	title: '角色状态',
			        	align: 'center',
			        	formatter: function (value, row, index) {
			        		return statusTools(row);
			        	}
			        },
			        {
			            field: 'create_time',
			            title: '创建时间',
			        	align: 'center'
			        },
                    {
                        title: '操作',
                        align: 'center',
                        formatter: function(value, row, index) {
                            var actions = [];
                            actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.role_id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
                            actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.role_id + '\')"><i class="fa fa-remove"></i>删除</a> ');
                            actions.push("<a class='btn btn-info btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authDataScope(" + row.role_id + ")'><i class='fa fa-check-square-o'></i>分配权限</a> ");
                            actions.push("<a class='btn btn-primary btn-xs " + editFlag + "' href='javascript:void(0)' onclick='authUser(" + row.role_id + ")'><i class='fa fa-user'></i>分配用户</a> ");
                            return actions.join('');
                        }
                    }]
			    };
			    $.table.init(options);
			});

			/* 角色管理-分配权限 */
			function authDataScope(role_id) {
			    var url = prefix + '/authDataScope/' + role_id;
                if ($.common.isMobile()) {
                    $.modal.openFull("分配权限", url);
                }
                else {
                    $.modal.open("分配权限", url);
                }
			}

			/* 角色管理-分配用户 */
			function authUser(role_id) {
			    var url = prefix + '/authUser/' + role_id;
			    $.modal.openTab("分配用户", url);
			}

			/* 角色状态显示 */
			function statusTools(row) {
			    if (row.status == 1) {
	    			return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\'' + row.role_id + '\')"></i> ';
	    		} else {
	    			return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\'' + row.role_id + '\')"></i> ';
	    		}
			}

			/* 角色管理-停用 */
			function disable(role_id) {
				$.modal.confirm("确认要停用角色吗？", function() {
					$.operate.post(prefix + "/changeStatus", { "role_id": role_id, "status": 1 });
			    })
			}

			/* 角色管理启用 */
			function enable(role_id) {
				$.modal.confirm("确认要启用角色吗？", function() {
					$.operate.post(prefix + "/changeStatus", { "role_id": role_id, "status": 0 });
			    })
			}
		</script>
	</body>
</html>